package com.log6z.dashborad.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 预约表
 * @TableName appointment
 */
@TableName(value ="appointment")
@Data
public class Appointment implements Serializable {
    /**
     * 自增主键
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 预约计划id
     */
    private Integer appointmentPlanId;

    /**
     * 预约时间段id
     */
    private Integer appointmentPeriodId;

    /**
     * 任务编号
     */
    private String taskCode;

    /**
     * 车辆id
     */
    private Integer vehicleId;

    /**
     * 车牌号码
     */
    private String vehicleNum;

    /**
     * 司机id
     */
    private Integer driverId;

    /**
     * 司机姓名
     */
    private String driverName;

    /**
     * 联系电话
     */
    private String tel;

    /**
     * 司机身份证
     */
    private String driverIdCard;

    /**
     * 客户id
     */
    private Integer custId;

    /**
     * 客户名称
     */
    private String custName;

    /**
     * 客户简称
     */
    private String custAbbreviation;

    /**
     * 装车客户id
     */
    private Integer loadingCustId;

    /**
     * 承运商id
     */
    private Integer carrierId;

    /**
     * 承运商名称
     */
    private String carrierName;

    /**
     * 承运商简称
     */
    private String carrierAbbreviation;

    /**
     * 线路id
     */
    private Integer lineId;

    /**
     * 线路名称
     */
    private String lineName;

    /**
     * 装货线路id
     */
    private Integer loadingLineId;

    /**
     * 物料id
     */
    private Integer goodId;

    /**
     * 物料名称
     */
    private String goodName;

    /**
     * 装货物料id
     */
    private Integer loadingGoodId;

    /**
     * 煤矿id
     */
    private Integer mineAreaId;

    /**
     * 煤矿名称
     */
    private String mineAreaName;

    /**
     * 煤矿简称
     */
    private String mineAreaAbbreviation;

    /**
     * 审核状态（0：待审核、10：待运输、20：装货完成、30：卸货待审核、40：任务完成、50：已驳回、60：已取消、70：已释放、80：任务异常、90：手动作废、100：空进空出）
     */
    private Integer status;

    /**
     * 流程状态(0-未打卡，1-已打卡，2-已叫号，3-已入场，4.待作业， 5.作业完成（已过重磅)，6-出场 ， 7. 作业异常，8.任务作废)
     */
    private Integer processStatus;

    /**
     * 驳回原因
     */
    private Integer rejectReason;

    /**
     * 预约时间
     */
    private Date appointmentTime;

    /**
     * 审核时间
     */
    private Date verifyTime;

    /**
     * 打卡时间
     */
    private Date clockTime;

    /**
     * 叫号时间
     */
    private Date callNumberTime;

    /**
     * 入园时间 
     */
    private Date inParkTime;

    /**
     * 入场时间 
     */
    private Date inFactoryareaTime;

    /**
     * 出停车场时间 
     */
    private Date outCarparkTime;

    /**
     * 入作业区时间
     */
    private Date intoWorkZoneTime;

    /**
     * 作业时间
     */
    private Date operationTime;

    /**
     * 过皮磅时间（过空磅）
     */
    private Date tareWeighTime;

    /**
     * 过磅时间（过重磅）
     */
    private Date weighTime;

    /**
     * 出场时间 
     */
    private Date outFactoryareaTime;

    /**
     * 卸货磅单上传时间
     */
    private Date uploadUnloadTime;

    /**
     * 是否迟到(0-否,1-迟到)
     */
    private Integer isLate;

    /**
     * 是否绿通（0 否 1是）
     */
    private Integer isGreenChanle;

    /**
     * 料口id
     */
    private Integer feedPortId;

    /**
     * 是否代预约
     */
    private Integer isReplace;

    /**
     * 进入的时候时候叫号：1叫号 0没叫号
     */
    private Integer isCallIn;

    /**
     * 预计装车时间
     */
    private Date estimatedLoadingTime;

    /**
     * 创建人id
     */
    private Integer createdId;

    /**
     * 创建时间
     */
    private Date createdAt;

    /**
     * 修改人id
     */
    private Integer modifiedId;

    /**
     * 修改时间
     */
    private Date modifiedAt;

    /**
     * 任务作废时间
     */
    private Date invalidTime;

    /**
     * 登记单id
     */
    private String registerId;

    /**
     * 
     */
    private Integer greenChanleRuleId;

    /**
     * 打印时间
     */
    private Date printTime;

    /**
     * 推送状态：0未推送场外停车场；10未推送矿区大门；20推送成功; 30场外停车场推送失败; 40矿区大门推送失败; 50取消推送成功; 60取消推送失败; 70空出推送成功; 80空出推送失败
     */
    private Integer pushStatus;

    /**
     * 作废人
     */
    private Long voider;

    /**
     * 作废时间
     */
    private Date voidTime;

    /**
     * 作废原因
     */
    private String voidReason;

    /**
     * 预约审核人id
     */
    private Integer appointmentVerifyId;

    /**
     * 预约审核人名称
     */
    private String appointmentVerifyBy;

    /**
     * 审核数据来源（1.小程序2.pc）
     */
    private Integer verifySourceType;

    /**
     * 取消时间
     */
    private Date cancelTime;

    /**
     * 进错料口时间
     */
    private Date enterErrorSiloTime;

    /**
     * 错误料口
     */
    private String errorSilo;

    /**
     * 是否内部停车场 1是 0否
     */
    private Integer parkId;

    /**
     * 推送作业区道闸状态：0未推送；10推送成功；20推送失败
     */
    private Integer pushGateStatus;

    /**
     * 集装箱号
     */
    private String boxNum;

    /**
     * 集装箱照片
     */
    private String boxNumImg;

    /**
     * 外部叫号时间
     */
    private Date firstCallTime;

    /**
     * 运单类型：0普通运单1合作运单2可控运单
     */
    private Integer appointmentType;

    /**
     * 是否属于提前预约:0否1是
     */
    private Integer isTq;

    /**
     * 是否是流转配额:0否1是
     */
    private Integer scrollQuota;

    /**
     * 空磅编号
     */
    private String weighBridgeIds;

    /**
     * 空磅名称
     */
    private String weighBridgeNames;

    /**
     * 是否是堆场任务1是0否
     */
    private Integer isBoxYard;

    /**
     * 是否结算任务: 1是 0否
     */
    private Integer isSettlementTask;

    /**
     * 是否签订合同: 1是 0否
     */
    private Integer isSignContract;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;



    @TableField(exist = false)
    private Integer totalCount;

    @TableField(exist = false)
    private Double coalTon;//吨位
}